/**
 * Copyright(c) Hainan eKing Technology co., LTD
 *
 * @date 2013年8月13日
 * 	
 * Original Author: 郑兴(zhengxing)
 *
 * ChangeLog
 *
 */
package com.hnas.sys.service.system;

import java.util.List;

import com.hnas.core.dto.DTOPagedList;
import com.hnas.sys.service.system.criteria.DTOSearchAuthority;
import com.hnas.sys.service.system.data.DTOPackage;
import com.hnas.sys.service.system.dto.DTOAuthority;

/**
 * <pre>权限服务接口类</pre>
 * @author 郑兴(zhengxing)
 *
 */
public interface AuthorityService {
	/**
	 * <pre>加载所有权限</pre>
	 * @Auther 郑兴(zhengxing)
	 * @date 2013年8月13日 上午11:50:39
	 * @return
	 */
	public List<DTOAuthority> loadAll();
	List<DTOAuthority> getAllAuthorities() ;
	/**
	 * <pre>根据ID查找权限</pre>
	 * @Auther 郑兴(zhengxing)
	 * @date 2013年8月13日 上午11:51:18
	 * @param id
	 * @return
	 */
	public DTOAuthority load(Long id);
	
	/**
	 * <pre>保存或更新权限</pre>
	 * @Auther 郑兴(zhengxing)
	 * @date 2013年8月13日 上午11:53:07
	 * @param dto
	 */
	public void saveOrUpdate(DTOAuthority dto, boolean OperateTypeOnly);
	/**
	 * 
	 * <pre>根据权限姓名查找</pre>
	 * @Author 万科(ke_wan)
	 * @date 2013-12-3 上午11:26:04
	 * @param AuthorityName
	 * @return
	 */
	public DTOAuthority loadAuthorityByName(String AuthorityName);
	
	/**
	 * <pre></pre> 
	 *@auther 周勇（zhou-y）
	 * 2015-4-10
	 * @param con
	 * @return
	 */
	DTOPagedList<DTOAuthority> search(DTOSearchAuthority con);//
	
	/**
	 * <pre></pre> 
	 *@auther 周勇（zhou-y）
	 * 2015-4-10
	 * @param id
	 */
	void disable(long id);
	
	/**
	 * <pre></pre> 
	 *@auther 周勇（zhou-y）
	 * 2015-4-12
	 * @param id
	 * @return
	 */
	List<DTOPackage> getAuthorityForDisplay(long id);
}
